Skip to content

Adapt CLI to wdl.20260718.1#6

Merged
cnluzhang merged 3 commits into
mainfrom
adapter/wdl.20260718.1
Jul 19, 2026
Merged

Adapt CLI to wdl.20260718.1#6
cnluzhang merged 3 commits into
mainfrom
adapter/wdl.20260718.1

Conversation

@cnluzhang

@cnluzhang cnluzhang commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

Summary

  • adapt worker lifecycle, compatibility, and platform capability handling to
    the current wdl.20260718.1 control contracts
  • expose workflow-definition presence and retired state across wdl workers,
    wdl workflows list, and worker delete previews
  • pin the packaged Wrangler fallback to 4.112.0, reject newly unmapped Wrangler
    fields, and disable Wrangler update checks and anonymous telemetry
  • preserve the configured CONTROL_URL scheme and port in local deploy output
    while keeping CONTROL_CONNECT_HOST transport-only
  • synchronize bilingual user docs, generated-project guidance, and focused
    regression coverage for the current WDL runtime surface

Impact

Workflow-definition-only worker entries are now visible, delete previews no
longer overstate blocked deletion, and retired Workflow definitions are marked
as retired=yes. The docs explain that restarting a retired definition returns
workflow_not_exported until an active version exports that Workflow name
again.

Local and self-hosted deploy summaries no longer assume port 8080. They derive
the Worker URL scheme and port from CONTROL_URL; explicit 8080/18080/custom
ports remain intact, while the default HTTP port is not printed.

Deploy diagnostics cover current unsupported compatibility flags and avoid
background Wrangler network traffic unrelated to project builds. The exact
Wrangler pin applies only to the CLI-packaged fallback; a Worker's project-local
Wrangler remains the preferred resolver source.

Validation

  • git diff --check
  • npm run lint
  • npm run typecheck
  • npm test (516 tests)
  • npm audit --audit-level=moderate (0 vulnerabilities)
  • npm pack --dry-run (115 files)
  • npm run test:integration:live against the local WDL stack on port 8080
    (20 tests)
  • fresh local wdl.20260718.1 stack on port 18080: whoami, deploy
    examples/hello-jsonc, request the exact printed Worker URL, and delete the
    test Worker

Expose workflow-definition lifecycle state and align compatibility, D1, Durable Object, R2, secret, JSRPC, and Workflows contracts.
Pin the packaged Wrangler fallback to 4.112.0, reject newly unmapped config fields, and disable update checks and telemetry for CLI-launched Wrangler processes.
Refresh bilingual user and agent documentation and add focused regression coverage.

Signed-off-by: Lu Zhang <lu@wdl.dev>

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the WDL companion CLI to match the wdl.20260718.1 control-plane contracts, tightening deploy/config validation and aligning user-facing output and docs with current platform capabilities.

Changes:

  • Extend worker lifecycle rendering to include workflow-definition state and refine delete dry-run messaging to report state presence accurately.
  • Pin the packaged Wrangler fallback to 4.112.0, reject newly unmapped Wrangler config keys, and disable Wrangler banner/metrics in the dry-run subprocess.
  • Synchronize bilingual guides/docs + agent references, and add focused regression tests for the updated contracts and diagnostics.

Reviewed changes

Copilot reviewed 30 out of 31 changed files in this pull request and generated no comments.

Show a summary per file
File Description
tests/unit/cli-lifecycle.test.js Adds/updates regression coverage for workers listing (workflow defs), delete dry-run messaging, and control-error compaction/escaping.
tests/unit/cli-deploy.test.js Extends deploy/config validation tests for newly rejected Wrangler fields and compatibility-flag error hints; verifies Wrangler env scrubbing.
tests/unit/cli-config-doctor.test.js Covers (unavailable) namespace URL behavior when /whoami omits the namespace URL.
templates/AGENTS.md Updates generated-project guidance for compatibility-date/flags policy and deploy/service binding references.
package.json Pins wrangler to 4.112.0 and updates jsonc-parser/smol-toml and dev tooling versions.
package-lock.json Locks dependency graph to match the updated/pinned package.json versions (including wrangler/workerd/miniflare).
lib/wrangler/config.js Rejects additional unsupported Wrangler config keys (addresses, dependencies_instrumentation).
lib/wrangler/command.js Scrubs control env and disables Wrangler banner + metrics in the dry-run child environment.
lib/workers-format.js Escapes terminal control chars in worker list output and adds `workflow-defs=(yes
lib/delete-format.js Extends worker delete formatting for workflow definition presence and updates dry-run phrasing.
GUIDE.md Updates English guide for new contracts/limits, Wrangler dry-run behavior, and worker workflow-definition state semantics.
GUIDE-zh.md Mirrors GUIDE.md updates in Chinese, keeping bilingual docs aligned.
docs/workflows.md Adds updated workflow limits and new error guidance (workflow_metadata_contention).
docs/workflows-zh.md Chinese sync of workflows limits/error guidance.
docs/secrets.md Updates secret key constraints documentation (grammar/length/reserved keys).
docs/secrets-zh.md Chinese sync of secrets constraints.
docs/README.md Adds deploy/service-binding topic link in the English docs index.
docs/README-zh.md Adds deploy/service-binding topic link in the Chinese docs index.
docs/r2.md Documents Headers-based httpMetadata.Expires IMF-fixdate requirement.
docs/r2-zh.md Chinese sync of R2 Expires requirement.
docs/durable-objects.md Documents updated DO RPC/body/name constraints.
docs/durable-objects-zh.md Chinese sync of DO constraints.
docs/deploy.md Documents Wrangler dry-run env behavior, compatibility-date policy, workflow-defs semantics, and common error mapping.
docs/deploy-zh.md Chinese sync of deploy documentation updates.
docs/d1.md Documents D1 lifecycle error redaction behavior for outward 5xx responses.
docs/d1-zh.md Chinese sync of D1 error redaction docs.
commands/workers.js Updates wdl workers help text to reflect workflow-definition-only entries.
commands/deploy.js Adds actionable hint for compatibility_flag_unsupported control errors.
commands/delete.js Updates delete help text to include workflow definitions among deleted worker state.
CHANGELOG.md Records user-visible behavior/toolchain changes and the deploy hint fix under Unreleased.
.claude/skills/wdl-deploy/SKILL.md Syncs agent-facing deploy guidance with updated compatibility/telemetry policy and delegated capability notes.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Show retired workflow definitions and document workflow_not_exported recovery.
Derive local Worker URL scheme and port from CONTROL_URL while keeping CONTROL_CONNECT_HOST transport-only.
Cover active and retired workflow output plus default and custom local ports.

Signed-off-by: Lu Zhang <lu@wdl.dev>
@cnluzhang
cnluzhang marked this pull request as ready for review July 19, 2026 01:47
@cnluzhang
cnluzhang requested a review from Copilot July 19, 2026 01:49

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 31 out of 32 changed files in this pull request and generated 1 comment.

Comment thread lib/workflows-format.js
Escape control-plane fields across workflow list, instance status, and lifecycle human output.
Keep --json responses unchanged while routing lifecycle success lines through the single-line status writer.
Clarify Wrangler update-check behavior and scope D1 5xx redaction docs to runtime/backend failures.

Signed-off-by: Lu Zhang <lu@wdl.dev>

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 32 out of 33 changed files in this pull request and generated no new comments.

@cnluzhang
cnluzhang merged commit 0cef93b into main Jul 19, 2026
7 checks passed
@cnluzhang
cnluzhang deleted the adapter/wdl.20260718.1 branch July 19, 2026 03:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants